package com.example.codegenerator.common.model.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 代码生成数据传递对象
 *
 * @author lvshengyu
 * @date 2023-08-17
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class GeneratorDTO {

    /**
     * 是否需要 Controller
     */
    private Boolean controller;

    /**
     * 是否需要 Service
     */
    private Boolean service;

    /**
     * 是否需要 ServiceImpl
     */
    private Boolean serviceImpl;

    /**
     * 是否需要 Mapper
     */
    private Boolean mapper;

    /**
     * 是否需要 mapperXml
     */
    private Boolean mapperXml;

    /**
     * 是否需要 Entity
     */
    private Boolean entity;

    /**
     * 是否需要 Provider
     */
    private Boolean provider;

    /**
     * 是否需要 ProviderImpl
     */
    private Boolean providerImpl;

    /**
     * 是否需要 Facade
     */
    private Boolean facade;

    /**
     * 是否需要 DomainApplication
     */
    private Boolean domainApplication;

    /**
     * 是否需要 controllerApi
     */
    private Boolean controllerApi;

    /**
     * 是否需要 Dto
     */
    private Boolean dto;

    /**
     * 是否需要 Vo
     */
    private Boolean vo;

    /**
     * 是否需要 Bo
     */
    private Boolean bo;

    /**
     * 是否需要 vue页面
     */
    private Boolean vue;

    /**
     * 是否需要 js
     */
    private Boolean js;

    /**
     * 表名称
     */
    private List<String> tableNameList;

    /**
     * 作者名称
     */
    private String author;
}
